package icu.bughub.app.app.ui.components.video

import android.os.Parcelable
import androidx.compose.runtime.getValue
import androidx.compose.runtime.mutableStateOf
import androidx.compose.runtime.setValue

/**
 * 存储播放器相关数据类
 */
//@Parcelize
@kotlinx.parcelize.Parcelize
class PlayerValue : Parcelable {

    //存储url是目的是为了横竖屏切换等重绘的场景
    var videoUrl: String = ""

    var coverUrl: String? = null

    var title: String = "视频详情"


    //视频总时长
    var duration by mutableStateOf(0L)

    //当前播放进度
    var currentPosition by mutableStateOf(0L)

    //当前状态
    var state by mutableStateOf(PlayState.NONE)

}

/**
 * 播放器状态
 */
enum class PlayState {

    NONE,//未播放
    INIT,//初始化
    LOADING,//加载中
    START,//开始播放
    IDLE,//空闲
    ERROR,//播放出错
    PREPARING,//准备中
    PAUSE,//暂停
    PLAYING,//播放中

}